package com.hnchances.studentscoresystem.entity;

import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;

/**
 * 成绩表实体
 * 对应数据库表：grades
 * 关联表：class（班级）、course（课程）、exam（考试）、student（学生）
 */
@Data
public class Grades implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键ID（自增）
     * 对应数据库字段：id，备注：id,key，自增
     */
    private Long id;

    /**
     * 课程关联ID（关联course表id）
     * 对应数据库字段：courseID，备注：课程关联id（文档中字段类型修正为int，与course表id匹配）
     */
    private Integer courseID;

    /**
     * 考试关联ID（关联exam表id）
     * 对应数据库字段：examID，备注：考试关联id
     */
    private Integer examID;

    /**
     * 班级关联ID（关联class表id）
     * 对应数据库字段：classID，备注：班级关联id
     */
    private Integer classID;

    /**
     * 学生关联ID（关联student表id，文档表结构缺失，补充字段以实现学生成绩关联）
     * 自定义补充字段，备注：学生关联id
     */
    private Long studentID;

    /**
     * 成绩分数
     * 对应数据库字段：grades，备注：成绩
     */
    private BigDecimal grades;

    /**
     * 状态（0-正常，1-删除）
     * 对应数据库字段：status，备注：0-正常，1-删除
     */
    private Integer status;
}